/*
 * @Description: vue配置文件，可以用来配置webpack
 * @Author: pinus
 * @Email: pinus0716@163.com
 * @Git: https://gitee.com/xyf97
 * @Date: 2021-10-03 11:55:29
 * @LastEditTime: 2021-10-03 17:10:31
 */
module.exports = {
  // 生产环境指定入口文件
  chainWebpack: config => {
    config.when(process.env.NODE_ENV === 'production', config => {
      config
        .entry('app')
        .clear()
        .add('./src/main-prod.js')

      // 为生产环境设定extenals
      config.set('externals', {
        vue: 'Vue',
        'vue-router': 'VueRouter',
        axios: 'axios',
        echarts: 'echarts',
        'vue-quill-editor': 'VueQuillEditor',
        'element-ui': 'ELEMENT',
        lodash: '_',
        nprogress: 'NProgress'
      })
      //
      config.plugin('html').tap(args => {
        args[0].isProd = true
        return args
      })
    })

    // 开发环境指定入口文件
    config.when(process.env.NODE_ENV === 'development', config => {
      config
        .entry('app')
        .clear()
        .add('./src/main-dev.js')

      config.plugin('html').tap(args => {
        args[0].isProd = false
        return args
      })
    })
  }
}
